import os

cwd = os.getcwd()

config = {
    'CPPPATH': [],
}

TARGETNAME = "test"

# LIB = Split('')
# LIB_DIR = Split('')

# FILELIST = Glob('*.c')
# HEADFILEPATH = Split('')

# 你可以在多个构建脚本共享变量 你可以使用 Export Import 这两个方法
env = Environment(**config)
Export('env')
'''
ej:
    env = Environment()
    Export(env)

or:
    env = Environment()
    debug = 10
    Export(env, debug)

or:
    Export('env debug')

or:
    SConscript('src/SConscript', 'env')

or:
    SConscript('src/SConscript', exports='env')

ej:
    Import(env)

    Import(env, debug)

    Import('env debug')

    Import('*')
'''

# env.VariantDir("build", "src", duplicate=0) # duplicate: 0 -- 不复制源代码的生成目录  1 -- 复制源代码的生成目录   (未指定时，默认=1)
# objs = env.SConscript(os.sep.join([cwd, "src", "SConscript"]))
# objs = env.SConscript("build/SConscript")
objs = env.SConscript('src/SConscript', variant_dir='build', duplicate=0)

# SConstruct 根目录调用每个子目录的 构建脚本, 通常子目录的构建脚本叫 SConscript 这是官方的解释
# 通常里面的路径都是相对于当前这个构建脚本 如果你先让子构建脚本 使用顶级目录你可以这样做 加上 '#' 这个符号
'''
SConscript(['drivers/display/SConscript',
            'drivers/mouse/SConscript',
            'parser/SConscript',
            'utilities/SConscript'])

env = Environment()
env.Program('prog', ['main.c', '#lib/foo1.c', 'foo2.c'])

# 当然你也可以直接使用绝对路径 不需要加任何符号

'''
env.Program(TARGETNAME, objs)